/**
 * Copyright &copy; 2020 <a href="https://github.com/somowhere/exam-system">exam-system</a> All rights reserved.
 */
package com.shanhesoft.java.modules.exam.domain;

import lombok.*;
import com.baomidou.mybatisplus.annotation.*;
import com.shanhesoft.java.common.core.annotation.DictType;
import com.shanhesoft.java.common.persistence.domain.IdEntity;

import javax.validation.constraints.Size;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.*;

/**
 * 课程实训管理Entity 课程实训管理
 * @author admin
 * @version 2020-11-17 01:02:25
 */
@TableName(value = "t_virtual_training")
@Data @ToString @NoArgsConstructor @AllArgsConstructor
@EqualsAndHashCode(callSuper = true)
public class VirtualTraining extends IdEntity<VirtualTraining> {

	private static final long serialVersionUID = 1L;
	/** F_COURSEID course_id  :  课程编号 */
	public static final String F_COURSEID = "courseId";
	/** F_TITLE title  :  名称 */
	public static final String F_TITLE = "title";
	/** F_INTRODUCTION introduction  :  简介 */
	public static final String F_INTRODUCTION = "introduction";
	/** F_KNOWLEDGEPOINTS knowledge_points  :  知识点 */
	public static final String F_KNOWLEDGEPOINTS = "knowledgePoints";
	/** F_TASK task  :  试验任务 */
	public static final String F_TASK = "task";
	/** F_RESERVEKNOWLEDGE reserve_knowledge  :  储备知识 */
	public static final String F_RESERVEKNOWLEDGE = "reserveKnowledge";
	/** F_DIFFICULTY difficulty  :  难度 */
	public static final String F_DIFFICULTY = "difficulty";
	/** F_PUBLISHFLAG publish_flag  :  是否发布 */
	public static final String F_PUBLISHFLAG = "publishFlag";


	/** courseId 名称 */@NotBlank @Size(max=200)
	private String title;

	/** courseId 课程编号 */@NotBlank @Size(max=50)
	@TableField("course_id")
	private String courseId;

	/** introduction 简介 */@Size(max=65535)
	private String introduction;

	/** knowledgePoints 知识点 */@Size(max=65535)
	@TableField("knowledge_points")
	private String knowledgePoints;

	/** task 试验任务 */@Size(max=65535)
	private String task;

	/** reserveKnowledge 储备知识 */@Size(max=65535)
	@TableField("reserve_knowledge")
	private String reserveKnowledge;

	/** difficulty 难度 */@NotNull
	private Integer difficulty;

	/** publishFlag 是否发布 */@Size(max=1)
	@TableField("publish_flag")
	private String publishFlag;


	@Override
    public boolean equals(Object o) {
        return super.equals(o);
    }
    @Override
    public int hashCode() {
        return super.hashCode();
    }
}
